home *** CD-ROM | disk | FTP | other *** search
- ;=============================================================================
- ; Only Experts
-
- (set @user-level 2
- )
-
- (set DEMO TRUE
- )
-
- ;=============================================================================
- ; make sure we are running under a 2.04 ROM
-
- (if (< (/ (getversion) 65536) 37)
- (
- (abort "WRITE läuft nur mit Kickstart 2.0 oder größer !")
- )
- )
-
- ;=============================================================================
- ; explain what we are all about...
-
- (if
- (exists "ENV:WRITE"
- )
- ;THEN
- (
- (message "Dieses Skript hat erkannt, daß sie WRITE bereits "
- "installiert haben und versucht nun ihre Version "
- "auf den neusten Stand zu bringen.\n"
- "Dies bedeutet, daß ihre alten Konfigurationen und "
- "REXX-Skripts die Endung '.OLD' bekommen. Ansonsten "
- "befinden sie sich im gleichen Verzeichnis.\n"
- "Vergewissern sie sich bevor sie sie wieder umbenennen, "
- "ob sie immernoch kompatibel sind.\n"
- "Sollten sie mir ihre Skripts und Konfigurationen "
- "schicken, so werde ich versuchen diese auf den "
- "neusten Stand zu halten und der nächsten Version beizulegen."
- )
-
- (message "ALLE ANDEREN FILES WERDEN ÜBERSCHRIEBEN. MACHEN SIE VORHER EIN "
- "UPDATE, WENN SIE SICH NICHT SICHER SIND, OB..."
- )
-
- (set @REINSTALL TRUE)
- )
- ;ELSE
- (
-
- (message "Dieses Script installiert WRITE und die dazugehörigen "
- "Daten in ihrem System :\n\n"
- "'GarbageCollector.library',\n"
- "'GarbagePrefs',\n"
- "'GCStat',\n"
- "'WRITE',\n"
- "'Config/#?.config',\n"
- "'WRITE.dok','WRITE.guide','WRITE.dvi'\n"
- "'deutsch/WRITE.catalog','english/WRITE.catalog'\n"
- "diverse REXX-Scripts\n"
- "und setzt schließlich die Umgebungsvariablen\n"
- "'WRITE', 'WRITE.config' und 'WRITE.guide'."
- )
-
- (set @REINSTALL FALSE)
- )
- ;END;
- )
-
- ;=============================================================================
- ; Installieren der garbagecollector.library
-
- (copylib (prompt "Installiere die\n"
- "'GarbageCollector.library'\n"
- "nach libs:")
- (help "Die 'GarbageCollector.library' ist für die "
- "Funktion von 'WRITE' unbedingt nötig. "
- "Sie organisiert die Speicherverwaltung.")
- (source "LIBS/garbagecollector.library")
- (dest "LIBS:")
- (confirm)
- )
-
- ;=============================================================================
- ; Installieren der garbagecollector Prefs
-
- (if (askbool (prompt "Soll das Preferences-Programm\n"
- "'GarbagePrefs'\n"
- "kopiert werden?\n\n"
- "Dieses Programm sollte nach einer "
- "Neuinstallation sofort augerufen werden !")
- (help "Nur durch das GrabagePrefs-Programm "
- "wird die 'garbagecolletor.library' "
- "optimal konfiguriert !")
- )
- ;THEN
- (
- (set @PREFS-DIR
- (askdir (prompt "Wohin soll das Preferences-Programm\n"
- "'GarbagePrefs'\n"
- "kopiert werden?")
- (help @askdir-help)
- (default "SYS:Prefs")
- )
- )
-
- (set @PREFS-FULL
- (tackon @PREFS-DIR "GarbagePrefs"
- )
- )
-
- (working ("Entpacke prefs/GarbagePrefs.lha nach %s" @PREFS-DIR)
- )
-
- (run ("c/lx -m x prefs/GarbagePrefs.lha %s" @PREFS-DIR)
- )
- )
- ;END
- )
-
- ;=============================================================================
- ; Installieren von BCStat
-
- (if (askbool (prompt "Soll BCStat installiert werden?\n\n"
- "BCStat zeigt die augenblickliche "
- "Auslastung des GarbageCollectors an. "
- "Eine nützliche Sache, aber nicht unbedingt "
- "notwendig.")
- (help "Aber schaden kanns auch nicht !")
- )
-
- ;THEN
- (
- (set @GC-DIR
- (askdir (prompt "Wohin soll das GarbageCollector-Tool\n"
- "'GCStat'\n"
- "kopiert werden?")
- (help @askdir-help)
- (default "SYS:Tools")
- )
- )
-
- (set @GC-FULL (tackon @GC-DIR "GCStat"
- )
- )
-
- (working ("Entpacke tools/GCStat.lha nach %s" @GC-DIR)
- )
-
- (run ("c/lx -m x tools/GCStat.lha %s" @GC-DIR)
- )
-
- )
- ;END
- )
-
- ;=============================================================================
- ; Installieren von WRITE
-
- (if
- (exists "ENV:WRITE"
- )
- ;THEN
- (
- (set @WRITE-DIR (pathonly (getenv "WRITE") )
- )
- )
- ;ELSE
- (
- (set @WRITE-DIR "SYS:")
- )
- ;END;
- )
-
- (set @WRITE-DIR
- (askdir (prompt "Wohin soll 'WRITE' kopiert werden?")
- (help @askdir-help)
- (default @WRITE-DIR)
- )
- )
-
-
- (set @WRITE-FULL (tackon @WRITE-DIR "WRITE"
- )
- )
-
- (copyfiles (prompt "Kopiere 'WRITE' nach :"
- @WRITE-FULL)
- (help @copyfiles-help)
- (source "WRITE")
- (dest @WRITE-DIR)
- (infos)
- )
-
- (set @default-dest @WRITE-DIR
- )
-
- ;=============================================================================
- ; Setzen der Umgebungsvariablen WRITE
-
- (textfile (prompt "Setze die Umgebungsvariable 'WRITE' "
- "mit dem Wert\n"
- "'" @WRITE-FULL ".'\n"
- "Sie sagt einigen REXX-Scripts, in welchem "
- "Verzeichnis sie WRITE finden können.")
- (help "Tatsächlich wird der Pfad in der Datei\n"
- "'ENV:WRITE'\n"
- "abgespeichert, was die genannte Wirkung hat.")
- (dest "ENV:WRITE")
- (append @WRITE-FULL)
- (confirm)
- )
-
- ;=============================================================================
- ; Setzen der Umgebungsvariablen WRITE für immer
-
- (textfile (prompt "Setze die Umgebungsvariable 'WRITE' "
- "auch im 'ENVARC:'-Verzeichnis, so daß auch nach einem "
- "Neustart die Umgebungsvariable gesetzt bleibt.")
- (help "Tatsächlich wird der Pfad in der Datei\n"
- "'ENVARC:WRITE'\n"
- "abgespeichert, was die genannte Wirkung hat.")
- (dest "ENVARC:WRITE")
- (append @WRITE-FULL)
- (confirm)
- )
-
-
- ;=============================================================================
- ; Installieren des Keyfiles
-
- (if (exists "WRITE.KEY"
- )
- ;THEN
- (
- (set DEMO FALSE
- )
- (set @KEY-DIR
- (askdir (prompt "Wohin soll der Keyfile\n"
- "'WRITE.KEY'\n"
- "kopiert werden?")
- (help @askdir-help)
- (default "s:")
- )
- )
-
- (set @KEY-FULL (tackon @KEY-DIR "WRITE.KEY"
- )
- )
-
- (copyfiles (prompt "Kopiere 'WRITE.KEY' nach :"
- @KEY-FULL)
- (help @copyfiles-help)
- (source "WRITE.KEY")
- (dest @KEY-DIR)
- (infos)
- )
-
- (textfile (prompt "Setze die Umgebungsvariablen\n"
- "'WRITE.KEY'\n"
- "Sie sagt WRITE, wo der den Keyfile finden kann. "
- "Kann der Keyfile nicht gefunden weren, "
- "oder ist er ungültig, so werden einige Optionen "
- "nicht freigegeben.")
- (help "Tatsächlich wird der Pfad in der Datei\n"
- "'ENV:WRITE.KEY'\n"
- "abgespeichert, was die genannte Wirkung hat.")
- (dest "ENV:WRITE.KEY")
- (append @KEY-FULL)
- (confirm)
- )
-
- (textfile (prompt "Setze die Umgebungsvariable\n"
- "'WRITE.KEY'\n"
- "auch im 'ENVARC:'-Verzeichnis, so daß auch nach einem "
- "Neustart die Umgebungsvariable gesetzt bleibt.")
- (help "Tatsächlich wird der Pfad in der Datei\n"
- "'ENVARC:WRITE.KEY'\n"
- "abgespeichert, was die genannte Wirkung hat.")
- (dest "ENVARC:WRITE.KEY")
- (append @KEY-FULL)
- (confirm)
- )
- )
- ;END
- )
-
- (if
- (exists "ENV:WRITE.KEY"
- )
-
- ;THEN
- (
- (set DEMO TRUE)
- )
- ;ELSE
-
- (set DEMO FALSE)
-
- ;END;
- )
-
- ;=============================================================================
- ; Kopieren der Konfiguration
-
- (if
- (exists "ENV:WRITE.CONFIG"
- )
-
- ;THEN
- (
- (set @CONFIG-DIR (getenv "WRITE.CONFIG")
- )
-
- (working ("Lösche alle alten #?.CONFIG.PP in %s" @CONFIG-DIR)
- )
-
- (foreach @CONFIG-DIR "#?.CONFIG.PP"
- (
- (set @this (tackon @CONFIG-DIR @each-name))
- (delete @this)
- )
- )
-
- (working ("Nenne alle #?.CONFIG im Verzeichnis %s in #?.CONFIG.OLD um." @CONFIG-DIR)
- )
-
- (foreach @CONFIG-DIR "#?.CONFIG.OLD"
- (
- (set @this (tackon @CONFIG-DIR @each-name))
- (delete @this)
- )
- )
-
- (foreach @CONFIG-DIR "#?.CONFIG"
- (
- (set @this (tackon @CONFIG-DIR @each-name))
- (set @that (tackon @CONFIG-DIR ("%s.OLD" @each-name)))
- (rename @this @that)
- )
- )
- )
- ;ELSE
-
- (set @CONFIG-DIR "S:"
- )
-
- ;END;
- )
-
- (set @CONFIG-FULL (copyfiles (prompt "Welche Konfigurationsfiles sollen "
- "kopiert werden?")
- (help "Der Standardkonfigurationsfile sowie "
- "einige Beispielkonfigurationen.")
- (source "Config")
- (dest @CONFIG-DIR)
- (all)
- (confirm)
- (infos)
- )
- )
-
- ;=============================================================================
- ; Setzen der Umgebungsvariablen WRITE.config
-
- (textfile (prompt "Setze die Umgebungsvariable 'WRITE.CONFIG.' "
- "mit dem Wert\n"
- "'" @CONFIG-FULL "'.\n"
- "Sie sagt 'WRITE', wo die Konfigurationsfiles "
- "zu finden sind.\n\n"
- "Dies ist unbedingt erforderlich !")
- (help "Tatsächlich wird der Pfad in der Datei\n"
- "'ENV:WRITE.CONFIG'\n"
- "abgespeichert, was die genannte Wirkung hat.")
- (dest "ENV:WRITE.CONFIG")
- (append @CONFIG-FULL)
- (confirm)
- )
-
- ;=============================================================================
- ; Setzen der Umgebungsvariablen WRITE.CONFIG für immer
-
- (textfile (prompt "Setze die Umgebungsvariable 'WRITE.CONFIG' "
- "auch im 'ENVARC:'-Verzeichnis, so daß auch nach einem "
- "Neustart die Umgebungsvariable gesetzt bleibt.")
- (help "Tatsächlich wird der Pfad in der Datei\n"
- "'ENVARC:WRITE.CONFIG'\n"
- "abgespeichert, was die genannte Wirkung hat.")
- (dest "ENVARC:WRITE.CONFIG")
- (append @CONFIG-FULL)
- (confirm)
- )
-
- ;=============================================================================
- ; now copy the catalogs
-
- (if (>= (/ (getversion "LIBS:locale.library") 65536) 38)
-
- (
- (set lang (askoptions (prompt "Welche Sprachen sollen installiert werden?\n\n"
- "Besitzen sie z.B. bereits eine deutschsprachige "
- "Version von WRITE, brauchen sie nicht extra "
- "einen Katalog installieren !")
- (help "Eine sehr nützliche Sache :\n"
- "'WRITE' unterstützt die 'locale.library', "
- "welche ab OS 2.1 vorhanden ist.\n"
- "'WRITE' kann damit in weiten Teilen "
- "sprachlich angepasst werden !")
- (choices "english" "deutsch")
- (default 1)
- )
- )
-
- (set n 0)
- (while (set language (select n "english"
- "deutsch"
- ""
- )
- )
- (
- (if (IN lang n)
- (
- (set target (tackon "Locale:Catalogs" language)
- )
- (makedir target)
- (copyfiles (source (cat "LOCALE/Catalogs/" language))
- (dest target)
- (all)
- )
- )
- )
- (set n (+ n 1))
- ))
- )
- )
- ;=============================================================================
- ; Abfrage, welche Anleitungen installiert werden sollen
-
- (set @DOKBITS
- (askoptions
- (prompt "Welche Anleitungen möchten sie "
- "installiert bekommen?")
- (help "WRITE.dok - Die normale ASCII-Anleitung\n"
- "WRITE.guide - Die Anleitung im Amigaguide-Format. "
- "sehr nützlich, für die Onlinehilfe unendbehrlich.\n"
- "WRITE.dvi - Ein .dvi-File der Anleitung für alle "
- "TeX-Freaks. Aus Platzgründen mit LHA gepackt !")
- (choices "WRITE.dok"
- "WRITE.guide"
- "WRITE.dvi"
- "GarbageCollector.LiesMich")
- (default 2)
- )
- )
-
- ;=============================================================================
- ; Installieren von WRITE.dok
-
- (if (IN @DOKBITS 0
- )
- ;THEN
- (
-
- (set @DOC-DIR
- (askdir (prompt "Wohin soll die ASCII-Anleitung\n"
- "'WRITE.dok'\n"
- "kopiert werden?")
- (default @WRITE-DIR)
- (help @askdir-help)
- )
- )
-
- (set @DOC-FULL (tackon @DOC-DIR "WRITE.dok"
- )
- )
-
- (working ("Entpacke WRITE.DOK.lha nach %s" @DOC-DIR)
- )
-
- (run ("c/lx -m x WRITE.DOK.lha %s" @DOC-DIR)
- )
-
- (tooltype (prompt "Setzte DefaultTool...")
- (help "Nichts Gefährliches !")
- (dest @DOC-FULL)
- (setdefaulttool @WRITE-FULL)
- (noposition)
- )
- )
- ;END
- )
-
- ;=============================================================================
- ; Installieren von WRITE.guide
-
- (if (IN @DOKBITS 1
- )
- ;THEN
- (
- (set @GUIDE-DIR
- (askdir (prompt "Wohin soll der AmigaGuidefile\n"
- "'WRITE.guide'\n"
- "kopiert werden?")
- (help @askdir-help)
- (default "HELP:deutsch")
- )
- )
-
- (set @GUIDE-FULL (tackon @GUIDE-DIR "WRITE.guide"
- )
- )
-
- (copyfiles (prompt "Kopiere 'WRITE.guide' nach :"
- @GUIDE-FULL)
- (help @copyfiles-help)
- (source "WRITE.guide")
- (dest @GUIDE-DIR)
- (infos)
- )
-
- (tooltype (prompt "Setzte DefaultTool...")
- (help "Nichts Gefährliches !")
- (dest @GUIDE-FULL)
- (noposition)
- )
-
- (textfile (prompt "Setze die Umgebungsvariable\n"
- "'WRITE.guide'\n"
- "Sie sagt WRITE, wo der Guide-File zu finden ist. "
- "Der Guide-File wird für die interaktive Hilfe "
- "benötigt.\n"
- "Sollten sie OS 3.0 oder höher besitzen, und "
- "haben sie den Guide-File in das Verzeichnis "
- "'HELP:deutsch' kopiert, braucht diese Variable "
- "nicht gesetzt werden. WRITE findet den "
- "Guide-File automatisch.")
- (help "Tatsächlich wird der Pfad in der Datei\n"
- "'ENV:WRITE.guide'\n"
- "abgespeichert, was die genannte Wirkung hat.")
- (dest "ENV:WRITE.guide")
- (append @GUIDE-FULL)
- (confirm)
- )
-
- (textfile (prompt "Setze die Umgebungsvariable\n"
- "'WRITE.guide'\n"
- "auch im ENVARC: Verzeichnis, so daß auch nach einem "
- "Neustart die Umgebungsvariable gesetzt bleibt.")
- (help "Tatsächlich wird der Pfad in der Datei\n"
- "'ENVARC:WRITE.guide'\n"
- "abgespeichert, was die genannte Wirkung hat.")
- (dest "ENVARC:WRITE.guide")
- (append @GUIDE-FULL)
- (confirm)
- )
- )
- ;END
- )
-
- ;=============================================================================
- ; Installieren von WRITE.dvi
-
- (if (= DEMO FALSE
- )
- ;THEN
- (
-
- (if (IN @DOKBITS 2
- )
- ;THEN
- (
-
- (set @DVI-DIR
- (askdir (prompt "Wohin soll der gepackte .DVI-File\n"
- "'WRITE.dvi.lha'\n"
- "kopiert werden?")
- (default "TEX:")
- (help @askdir-help)
- )
- )
-
- (set @DVI-FULL (tackon @DVI-DIR "WRITE.dvi.lha"
- )
- )
-
- (working ("Entpacke WRITE.guide.lha nach %s" @DVI-DIR)
- )
-
- (run ("c/lx -m x WRITE.guide.lha %s" @DVI-DIR)
- )
-
- )
- ;END
- )
- )
- ;ELSE
- (
- (message "Tut mit leid...\n"
- "WRITE.dvi.lha liegt nur der Vollversion bei !"
- )
- )
- ;END
- )
-
- ;=============================================================================
- ; Installieren von GarbageCollector.LiesMich
-
- (if (IN @DOKBITS 3
- )
- ;THEN
- (
-
- (set @COLL-DIR
- (askdir (prompt "Wohin soll die GarbageCollector-Anleitung\n"
- "'GarbageCollector.LiesMich'\n"
- "kopiert werden?")
- (default "MAN:")
- (help @askdir-help)
- )
- )
-
- (set @COLL-FULL (tackon @COLL-DIR "GarbageCollector.LiesMich"
- )
- )
-
- (working ("Entpacke GarbageCollector.lha nach %s" @COLL-DIR)
- )
-
- (run ("c/lx -m x GarbageCollector.LiesMich.lha %s" @COLL-DIR)
- )
-
- (tooltype (prompt "Setzte DefaultTool...")
- (help "Nichts Gefährliches !")
- (dest @COLL-FULL)
- (setdefaulttool @WRITE-FULL)
- (noposition)
- )
- )
- ;END
- )
-
- ;=============================================================================
- ; Installieren der REXX-Script
-
-
- (if (AND @REINSTALL
- (askbool (prompt "Wollen sie ihre alten REXX-Skripts aufbewahren?")
- (help "Ihre alten REXX-Skript werden dann umbenannt !")
- )
- )
-
- ;THEN
- (
-
- (set @REXX-DIR
- (askdir (prompt "Wo haben sie ihre alten "
- "REXX-Sripts ?")
- (default "REXX:")
- (help @askdir-help)
- )
- )
-
- (working ("Lösche alle alten #?.wrx.old")
- )
-
- (foreach @REXX-DIR "#?.wrx.old"
- (
- (set @this (tackon @REXX-DIR @each-name))
- (delete @this)
- )
- )
-
- (working ("Nenne alle #?.wrx in #?.wrx.old um.")
- )
-
- (foreach @REXX-DIR "#?.wrx"
- (
- (set @this (tackon @REXX-DIR @each-name))
- (set @that (tackon @REXX-DIR ("%s.OLD" @each-name)))
- (rename @this @that)
- )
- )
-
- )
- ;ELSE
-
- (set @REXX-DIR "REXX:")
-
- ;END;
- )
-
-
- (copyfiles (prompt "Welche REXX-Scripts sollen kopiert werden?")
- (help "Dies sind einige AREXX-Files für verschiedene Zwecke. "
- "Für mehr Information lesen sie das Kapitel 'REXX-Scripts' "
- "in der Anleitung oderh den Header der einzelnen Scripte.")
- (source "REXX")
- (dest @REXX-DIR)
- (all)
- (confirm)
- (infos)
- )
-
- (message "Lesen sie nun den Text 'Garbage-Collector.Liesmich' sowie "
- "das Kapitel Installation in der Anleitung.")
-
- (message "Starten sie anschließend das Programm 'GarbagePrefs', wählen "
- "sie den Menüpunkt 'Werte vorschlagen' und speichern sie ab.\n"
- "Dies garantiert, daß die GarbageCollector.library, die von "
- "WRITE benötigt wird, optimal ihren Speicher ausnutzt.")
-
- (message "Veränderen sie dann anschließend gegebenenfalls, wie auch im "
- "Kapitel 'Installation' der Anleitung beschrieben, die Tooltypes "
- "des WRITE-Icons sowie die 'SETBACKUP' und 'SETHOTKEY'-Eintäge im "
- "File 'STARTUP.CONFIG' im Verzeichnis '" @CONFIG-FULL "'.")
-
- (if (= DEMO TRUE
- )
- ;THEN
- (
- (message "Dies ist nur eine Demo-Version !!!\n\n"
- "Wollen sie sich registrieren lassen, so schreiben sie an :")
-
- (message "Tim Teulings\n"
- "An der Dorndelle 16\n"
- "59192 Bergamen (Deutschland)\n\n"
- "MausNet : Tim teulings @ UN\n"
- "InterNet : rael@edge.ping.de\n\n"
- "Und überweisen sie 30 DM auf folgendes Konto :\n"
- "Sparkasse Berkamen - Bönen\n"
- "BLZ : 410 518 45\n"
- "KontoNr.: 16186496")
- )
- ;END
- )
-
- (message "Feddich !!!\n\n"
- "Ich wünsche ihnen viel Spaß mit dieser Version von\n\n"
- "WRITE.\n\n"
- "Tim Teulings\n")
-